package com.sun.apilimitrate.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface RateLimit {
    // 限流的唯一标识前缀
    String key() default "rate_limit";

    // 每秒允许的请求次数
    long rate() default 10;

    // 时间窗口大小（秒）
    long rateInterval() default 1;

    // 被限流时的提示信息
    String message() default "请求过于频繁，请稍后再试";
}